The present invention relates to segmented network topologies and, more specifically, a reset sequence for a segmented network topology.
A segmented computer network is a network that is broken up into groups in order to contain broadcast traffic and improve performance. Segmented networks seamlessly provide access to resources located on different network hosts (or xe2x80x9cnodesxe2x80x9d) in each group using a shared communications bus. The nodes in each group are connected to one another through a single communications ring or a pair of counter-rotating rings, for example. In a standard segmented network, each node monitors activity on the ring. Messages are detected by all nodes on the ring, but are accepted (or stripped) by the node or nodes to which they are addressed. Segmented network performance is achieved by using point to point links rather than slower bused wires and by supporting concurrent communication on non-overlapping segments.
Initialization of a segmented computer network presents challenges not found in other more traditional bus architectures. The segmented nature of the network prevents information sent from a network participant (a node) from reaching the destination nodes at the same time, or within a boundary of time. Likewise, the status of other nodes in the network cannot be ascertained by a node at any particular time. Communications delays are highly dependent on network topology, network traffic, and node design. All of these factors may contribute to communications delay differences between different nodes. These communications delay differences make network initialization difficult. Thus, a reset sequence is desired for reliably initiating communications over a segmented communications network bus.
The present invention provides a method of resetting a segmented computer network topology having a plurality of network hosts, which are coupled in a ring. The method includes initiating a reset sequence having a flushing phase, a subsequent scrubber selection phase, a next subsequent slot identification phase and a next subsequent ring start-up phase. Selected packets received by the network hosts are flushed from the ring during the flushing phase. A single one of the network hosts is selected as a scrubber host during the scrubber selection phase. A unique slot identifier is assigned to each of the network hosts during the slot identification phase. A ring start-up packet is sent from the scrubber host to each of the other network hosts over the ring during the ring start-up phase.
Another aspect of the present invention relates to a segmented computer network topology, which includes a segmented computer network and a plurality of network hosts which are coupled in a ring within the segmented computer network. The plurality of network hosts are adapted to implement a reset sequence having a first, reset flushing phase, a second, scrubber selection phase, a third, slot identification assignment phase and a fourth, ring start-up phase.
Another aspect of the present invention relates to a segmented network host comprising a host identifier and first and second opposite ports. The segmented network host is adapted to execute a segmented network reset sequence including steps of: receiving a flushing reset packet through one of the first and second ports and responsively sending the flushing reset packet out the other of the first and second ports and responsively discarding selected additional packets received through at least one of the first and second ports; receiving scrubber selection packets through at least one of the first and second ports and responsively sending the scrubber selection packets out the other of the first and second ports, wherein each scrubber selection packet carries a host identifier variable; selecting the network host as a scrubber host or a non-scrubber host based on whether the unique host identifier of the network host has a predetermined relative magnitude as compared to the host identifier variables carried by the scrubber selection packets; assigning the host a slot identifier and sending a slot assignment packet carrying a slot identifier variable out one of the first and second ports, if the network host is selected as a scrubber host; receiving a slot assignment packet, which carries a slot identifier variable, through one of the first and second ports, assigning the network host a slot identifier based on the slot identifier variable, and sending the slot assignment packet out the other of the first and second ports, if the network host is selected as a non-scrubber host; and sending a ring start-up packet through one of the first and second ports if the network host is selected as a scrubber host or waiting to receive the ring start-up packet through one of the first and second ports if the network host is selected as a non-scrubber host.
Yet another aspect of the present invention relates to a reset packet for use in a reset sequence of a segmented network topology. The reset packet includes a reset phase field, an extended unique identifier field and a slot assignment variable field. The reset phase field indicates whether the reset sequence is in a reset flushing phase, a scrubber selection phase, a slot identifier assignment phase or a ring start-up phase.